package Mateusz_Flieger;


import java.util.Scanner;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author Nozdi
 */
public class liczba_zespolona {
    public double re=0;
    public double im=0;
    
    liczba_zespolona (double re, double im) {
        this.re = re;
        this.im = im;
    }
    liczba_zespolona(liczba_zespolona c){
        im=c.im;
        re=c.re;
    }
    static public double round(double d, int ic) {
        java.text.NumberFormat nf = java.text.NumberFormat.getInstance();
        nf.setMaximumFractionDigits(ic);
        nf.setMinimumFractionDigits(ic);
        return Double.parseDouble((nf.format(d)).replaceAll(",", ".").replaceAll(" ", "") );
}
    
    public liczba_zespolona wczytanie(){
        Scanner sc = new Scanner(System.in);
                re = (sc.nextDouble()); 
                String liczba = (sc.nextLine()); 
        double im = Double.parseDouble(liczba);
        /*liczba.toCharArray();
        for (int i=0; i<(liczba.length()); i++){
            if(liczba != 'i'){
                
            }}*/
        liczba_zespolona c = new liczba_zespolona(re, im);
        return c;
    }
    
    
    public void jakaliczba(liczba_zespolona a) {
        System.out.print(a.re+" + "+a.im+"i");
    }
    
    public liczba_zespolona rand(){
        re = (round(((Math.random())*10),2));
        im = (round(((Math.random())*10),2));
        liczba_zespolona c = new liczba_zespolona(re, im);
        return c;
    }
    
    public liczba_zespolona dodawnie(liczba_zespolona a, liczba_zespolona b) {
        double r=0, i=0;
        r=(a.re + b.re);
        i=(a.im + b.im);
        liczba_zespolona c = new liczba_zespolona(r, i);
        return c;
    }
    public liczba_zespolona roznica(liczba_zespolona a, liczba_zespolona b){
        double r=0, i=0;
        r=a.re - b.re;
        i=a.im - b.im;
        liczba_zespolona c = new liczba_zespolona(r,i);
        return c;
    }
    public liczba_zespolona mnozenie(liczba_zespolona a, liczba_zespolona b){
        double r=0, i=0;
        r=(a.re*b.re)-(a.im*b.im);
        i=(a.im*b.re)+(a.re*b.im);
        liczba_zespolona c = new liczba_zespolona(r, i);
        return c;
    }
    public double modul(liczba_zespolona a){
        return (Math.sqrt((a.re*a.re)+(a.im*a.im))); 
    }
}
